<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>Data Structures for Sets and Graphs: BitMapDirectlyAddressedSet&lt; T &gt; Class Template Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">Data Structures for Sets and Graphs
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.1.1 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="#pro-attribs">Protected Attributes</a>  </div>
  <div class="headertitle">
<div class="title">BitMapDirectlyAddressedSet&lt; T &gt; Class Template Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>A <a class="el" href="classDirectlyAddressedSet.html" title="A static or dynamic set of elements with direct addressing.">DirectlyAddressedSet</a> implemented with an array of nodes, each node corresponding to a word of the specified type.  
 <a href="classBitMapDirectlyAddressedSet.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="BitMapDirectlyAddressedSet_8h_source.html">BitMapDirectlyAddressedSet.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for BitMapDirectlyAddressedSet&lt; T &gt;:</div>
<div class="dyncontent">
<div class="center"><img src="classBitMapDirectlyAddressedSet__inherit__graph.png" border="0" usemap="#BitMapDirectlyAddressedSet_3_01T_01_4_inherit__map" alt="Inheritance graph"/></div>
<map name="BitMapDirectlyAddressedSet_3_01T_01_4_inherit__map" id="BitMapDirectlyAddressedSet_3_01T_01_4_inherit__map">
<area shape="rect" id="node7" href="classArrayBitMapDirectlyAddressedSet.html" title="A BitMapDirectlyAddressedSet implemented with an array of words." alt="" coords="476,5,676,51"/><area shape="rect" id="node9" href="classHashBitMapDirectlyAddressedSet.html" title="HashBitMapDirectlyAddressed\lSet\&lt; T \&gt;" alt="" coords="476,74,676,121"/><area shape="rect" id="node11" href="classMultiLevelDirectlyAddressedSet.html" title="An implementation of DirectlyAddressedSet using a static multilevel bitmap as data structure..." alt="" coords="483,143,669,190"/><area shape="rect" id="node2" href="classDirectlyAddressedSet.html" title="A static or dynamic set of elements with direct addressing." alt="" coords="5,56,155,85"/><area shape="rect" id="node4" href="classBitTools.html" title="BitTools\&lt; T \&gt;" alt="" coords="29,109,131,139"/><area shape="rect" id="node13" href="classMultiArrayDirectlyAddressedSet.html" title="A MultiLevelDirectlyAddressedSet implemented with an ArrayBitMapDirectlyAddressedSet per level..." alt="" coords="727,74,913,121"/><area shape="rect" id="node15" href="classMultiHashDirectlyAddressedSet.html" title="MultiHashDirectlyAddressed\lSet\&lt; T \&gt;" alt="" coords="727,143,913,190"/><area shape="rect" id="node17" href="classvEBTree.html" title="vEBTree\&lt; T \&gt;" alt="" coords="768,213,872,243"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<div class="dynheader">
Collaboration diagram for BitMapDirectlyAddressedSet&lt; T &gt;:</div>
<div class="dyncontent">
<div class="center"><img src="classBitMapDirectlyAddressedSet__coll__graph.png" border="0" usemap="#BitMapDirectlyAddressedSet_3_01T_01_4_coll__map" alt="Collaboration graph"/></div>
<map name="BitMapDirectlyAddressedSet_3_01T_01_4_coll__map" id="BitMapDirectlyAddressedSet_3_01T_01_4_coll__map">
<area shape="rect" id="node2" href="classDirectlyAddressedSet.html" title="A static or dynamic set of elements with direct addressing." alt="" coords="5,136,155,165"/><area shape="rect" id="node4" href="classDirectlyAddressedSet_1_1Iterator.html" title="A general iterator to scan a DirectlyAddressedSet." alt="" coords="5,6,155,53"/><area shape="rect" id="node6" href="classBitTools.html" title="BitTools\&lt; T \&gt;" alt="" coords="179,136,280,165"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>

<p><a href="classBitMapDirectlyAddressedSet-members.html">List of all members.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBitMapDirectlyAddressedSet_1_1BitMapIterator.html">BitMapIterator</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">An abstract implementation of <a class="el" href="classDirectlyAddressedSet_1_1Iterator.html" title="A general iterator to scan a DirectlyAddressedSet.">DirectlyAddressedSet::Iterator</a>.  <a href="classBitMapDirectlyAddressedSet_1_1BitMapIterator.html#details">More...</a><br/></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBitMapDirectlyAddressedSet_1_1ComplIterator.html">ComplIterator</a></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBitMapDirectlyAddressedSet_1_1FilteredBitMapIterator.html">FilteredBitMapIterator</a></td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a4fa7b12ff3c5ca64ea9c4048dda98754"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBitMapDirectlyAddressedSet.html#a4fa7b12ff3c5ca64ea9c4048dda98754">~BitMapDirectlyAddressedSet</a> ()</td></tr>
<tr class="memdesc:a4fa7b12ff3c5ca64ea9c4048dda98754"><td class="mdescLeft">&#160;</td><td class="mdescRight">The simple destructor.  <a href="#a4fa7b12ff3c5ca64ea9c4048dda98754"></a><br/></td></tr>
<tr class="memitem:a17a8959c7a96ae90a755f7106ff06093"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classDirectlyAddressedSet.html">DirectlyAddressedSet</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBitMapDirectlyAddressedSet.html#a17a8959c7a96ae90a755f7106ff06093">clone</a> () const =0</td></tr>
<tr class="memdesc:a17a8959c7a96ae90a755f7106ff06093"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a copy of the current object.  <a href="#a17a8959c7a96ae90a755f7106ff06093"></a><br/></td></tr>
<tr class="memitem:adf904ffa5738d522834a5ef3cebec79d"><td class="memItemLeft" align="right" valign="top">virtual <br class="typebreak"/>
<a class="el" href="classDirectlyAddressedSet_1_1Iterator.html">DirectlyAddressedSet::Iterator</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBitMapDirectlyAddressedSet.html#adf904ffa5738d522834a5ef3cebec79d">newIterator</a> ()</td></tr>
<tr class="memdesc:adf904ffa5738d522834a5ef3cebec79d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Starts a new iterator for this set.  <a href="#adf904ffa5738d522834a5ef3cebec79d"></a><br/></td></tr>
<tr class="memitem:adfd95747fa6f3852640b6f291a515d5f"><td class="memItemLeft" align="right" valign="top">virtual <br class="typebreak"/>
<a class="el" href="classDirectlyAddressedSet_1_1Iterator.html">DirectlyAddressedSet::Iterator</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBitMapDirectlyAddressedSet.html#adfd95747fa6f3852640b6f291a515d5f">newComplIterator</a> ()</td></tr>
<tr class="memdesc:adfd95747fa6f3852640b6f291a515d5f"><td class="mdescLeft">&#160;</td><td class="mdescRight">An Iterator for the complement of the set represented by the object.  <a href="#adfd95747fa6f3852640b6f291a515d5f"></a><br/></td></tr>
<tr class="memitem:a0020a54ee383f00263d23e79a94a79a7"><td class="memItemLeft" align="right" valign="top">virtual <br class="typebreak"/>
<a class="el" href="classDirectlyAddressedSet_1_1Iterator.html">DirectlyAddressedSet::Iterator</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBitMapDirectlyAddressedSet.html#a0020a54ee383f00263d23e79a94a79a7">newIterator</a> (<a class="el" href="classBitMapDirectlyAddressedSet.html">BitMapDirectlyAddressedSet</a>&lt; T &gt; *d, <a class="el" href="classFilter.html">Filter</a>&lt; T &gt; *f)</td></tr>
<tr class="memdesc:a0020a54ee383f00263d23e79a94a79a7"><td class="mdescLeft">&#160;</td><td class="mdescRight">An Iterator for the set represented by the object with a filter.  <a href="#a0020a54ee383f00263d23e79a94a79a7"></a><br/></td></tr>
<tr class="memitem:a304b510e345a395c13f1fdfcbef160e2"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBitMapDirectlyAddressedSet.html#a304b510e345a395c13f1fdfcbef160e2">toSet</a> (long i)</td></tr>
<tr class="memdesc:a304b510e345a395c13f1fdfcbef160e2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds the specified key to the set.  <a href="#a304b510e345a395c13f1fdfcbef160e2"></a><br/></td></tr>
<tr class="memitem:aa084b0ee63e53920d9cfa662feb3ffeb"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBitMapDirectlyAddressedSet.html#aa084b0ee63e53920d9cfa662feb3ffeb">toCompl</a> (long i)</td></tr>
<tr class="memdesc:aa084b0ee63e53920d9cfa662feb3ffeb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Removes the specified key from the set.  <a href="#aa084b0ee63e53920d9cfa662feb3ffeb"></a><br/></td></tr>
<tr class="memitem:a8bacc011da032898e445e0bd41dc5f14"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBitMapDirectlyAddressedSet.html#a8bacc011da032898e445e0bd41dc5f14">flip</a> (long i)</td></tr>
<tr class="memdesc:a8bacc011da032898e445e0bd41dc5f14"><td class="mdescLeft">&#160;</td><td class="mdescRight">Swap a element between the set and the complement.  <a href="#a8bacc011da032898e445e0bd41dc5f14"></a><br/></td></tr>
<tr class="memitem:aae0d63c2cf0f6dbf65657448b14287b5"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBitMapDirectlyAddressedSet.html#aae0d63c2cf0f6dbf65657448b14287b5">isInSet</a> (long i) const </td></tr>
<tr class="memdesc:aae0d63c2cf0f6dbf65657448b14287b5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Verify if a element of the universe is in the set.  <a href="#aae0d63c2cf0f6dbf65657448b14287b5"></a><br/></td></tr>
<tr class="memitem:a8e4dd512b40fdada85967c663480878f"><td class="memItemLeft" align="right" valign="top">virtual char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBitMapDirectlyAddressedSet.html#a8e4dd512b40fdada85967c663480878f">toArray</a> (long *size)=0</td></tr>
<tr class="memdesc:a8e4dd512b40fdada85967c663480878f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a vector of the elements in the set.  <a href="#a8e4dd512b40fdada85967c663480878f"></a><br/></td></tr>
<tr class="memitem:a1886374dcac4d2468c71c98aea3f2f06"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBitMapDirectlyAddressedSet.html#a1886374dcac4d2468c71c98aea3f2f06">allToSet</a> ()=0</td></tr>
<tr class="memdesc:a1886374dcac4d2468c71c98aea3f2f06"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add all the elements in the universe to the set.  <a href="#a1886374dcac4d2468c71c98aea3f2f06"></a><br/></td></tr>
<tr class="memitem:a98721fe36c0309b662f0a4053b8c10b3"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBitMapDirectlyAddressedSet.html#a98721fe36c0309b662f0a4053b8c10b3">allToCompl</a> ()=0</td></tr>
<tr class="memdesc:a98721fe36c0309b662f0a4053b8c10b3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Remove all the elements of the set.  <a href="#a98721fe36c0309b662f0a4053b8c10b3"></a><br/></td></tr>
<tr class="memitem:a3dc0ff33cdfede898cfd29d10caa0ad6"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBitMapDirectlyAddressedSet.html#a3dc0ff33cdfede898cfd29d10caa0ad6">flipAll</a> ()=0</td></tr>
<tr class="memdesc:a3dc0ff33cdfede898cfd29d10caa0ad6"><td class="mdescLeft">&#160;</td><td class="mdescRight">The complement of the current set.  <a href="#a3dc0ff33cdfede898cfd29d10caa0ad6"></a><br/></td></tr>
<tr class="memitem:a781346a0534bce876e240cb2cc92d0ac"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBitMapDirectlyAddressedSet.html#a781346a0534bce876e240cb2cc92d0ac">unionOf</a> (<a class="el" href="classDirectlyAddressedSet.html">DirectlyAddressedSet</a> *v, <a class="el" href="classDirectlyAddressedSet.html">DirectlyAddressedSet</a> *w)</td></tr>
<tr class="memdesc:a781346a0534bce876e240cb2cc92d0ac"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds to this set all the elements in the union of two specified sets.  <a href="#a781346a0534bce876e240cb2cc92d0ac"></a><br/></td></tr>
<tr class="memitem:a8ab9c444519d40684247c4bc3c1be4cc"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBitMapDirectlyAddressedSet.html#a8ab9c444519d40684247c4bc3c1be4cc">symDiffOf</a> (<a class="el" href="classDirectlyAddressedSet.html">DirectlyAddressedSet</a> *v, <a class="el" href="classDirectlyAddressedSet.html">DirectlyAddressedSet</a> *w)</td></tr>
<tr class="memdesc:a8ab9c444519d40684247c4bc3c1be4cc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds to this set all the elements in the symmetric difference of two specified sets.  <a href="#a8ab9c444519d40684247c4bc3c1be4cc"></a><br/></td></tr>
<tr class="memitem:a711f4b377ff461e9773b2a3eabcf89af"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBitMapDirectlyAddressedSet.html#a711f4b377ff461e9773b2a3eabcf89af">intersectOf</a> (<a class="el" href="classDirectlyAddressedSet.html">DirectlyAddressedSet</a> *v, <a class="el" href="classDirectlyAddressedSet.html">DirectlyAddressedSet</a> *w)</td></tr>
<tr class="memdesc:a711f4b377ff461e9773b2a3eabcf89af"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds to this set all the elements in the intersection of two specified sets.  <a href="#a711f4b377ff461e9773b2a3eabcf89af"></a><br/></td></tr>
<tr class="memitem:a31d1c87fec3e523b241595d4cb73a808"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBitMapDirectlyAddressedSet.html#a31d1c87fec3e523b241595d4cb73a808">diffOf</a> (<a class="el" href="classDirectlyAddressedSet.html">DirectlyAddressedSet</a> *v, <a class="el" href="classDirectlyAddressedSet.html">DirectlyAddressedSet</a> *w)</td></tr>
<tr class="memdesc:a31d1c87fec3e523b241595d4cb73a808"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds to this set all the elements in the difference of two specified sets.  <a href="#a31d1c87fec3e523b241595d4cb73a808"></a><br/></td></tr>
<tr class="memitem:a0b1150e706365effaf3bf4d25f1f88eb"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBitMapDirectlyAddressedSet.html#a0b1150e706365effaf3bf4d25f1f88eb">show</a> ()</td></tr>
<tr class="inherit_header pub_methods_classDirectlyAddressedSet"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classDirectlyAddressedSet')"><img src="closed.png" alt="-"/>&nbsp;Public Member Functions inherited from <a class="el" href="classDirectlyAddressedSet.html">DirectlyAddressedSet</a></td></tr>
<tr class="memitem:a88d7e26e952770c53a961e98c17a41c7 inherit pub_methods_classDirectlyAddressedSet"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDirectlyAddressedSet.html#a88d7e26e952770c53a961e98c17a41c7">~DirectlyAddressedSet</a> ()</td></tr>
<tr class="memdesc:a88d7e26e952770c53a961e98c17a41c7 inherit pub_methods_classDirectlyAddressedSet"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="#a88d7e26e952770c53a961e98c17a41c7"></a><br/></td></tr>
<tr class="memitem:a3729ca91844f9307afe06f93067e5b2f inherit pub_methods_classDirectlyAddressedSet"><td class="memItemLeft" align="right" valign="top">virtual long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDirectlyAddressedSet.html#a3729ca91844f9307afe06f93067e5b2f">nextOf</a> (long i)</td></tr>
<tr class="memdesc:a3729ca91844f9307afe06f93067e5b2f inherit pub_methods_classDirectlyAddressedSet"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determines the next key in the set, in ascending order, of the specified value.  <a href="#a3729ca91844f9307afe06f93067e5b2f"></a><br/></td></tr>
<tr class="memitem:a68b2f85831f12352973e8f64fb61a924 inherit pub_methods_classDirectlyAddressedSet"><td class="memItemLeft" align="right" valign="top">virtual long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDirectlyAddressedSet.html#a68b2f85831f12352973e8f64fb61a924">universeSize</a> () const </td></tr>
<tr class="memdesc:a68b2f85831f12352973e8f64fb61a924 inherit pub_methods_classDirectlyAddressedSet"><td class="mdescLeft">&#160;</td><td class="mdescRight">The size of the universe.  <a href="#a68b2f85831f12352973e8f64fb61a924"></a><br/></td></tr>
<tr class="memitem:ab17ea6e0af7dc026fb12d267c6849530 inherit pub_methods_classDirectlyAddressedSet"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDirectlyAddressedSet.html#ab17ea6e0af7dc026fb12d267c6849530">isEmpty</a> () const =0</td></tr>
<tr class="memdesc:ab17ea6e0af7dc026fb12d267c6849530 inherit pub_methods_classDirectlyAddressedSet"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks whether this set is empty.  <a href="#ab17ea6e0af7dc026fb12d267c6849530"></a><br/></td></tr>
<tr class="memitem:a3a433c49b02c6e0f582b2e9ed60fac4e inherit pub_methods_classDirectlyAddressedSet"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classDirectlyAddressedSet.html">DirectlyAddressedSet</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDirectlyAddressedSet.html#a3a433c49b02c6e0f582b2e9ed60fac4e">subset</a> (long from, long to) const =0</td></tr>
<tr class="memdesc:a3a433c49b02c6e0f582b2e9ed60fac4e inherit pub_methods_classDirectlyAddressedSet"><td class="mdescLeft">&#160;</td><td class="mdescRight">Subset containing the elements between the specified values.  <a href="#a3a433c49b02c6e0f582b2e9ed60fac4e"></a><br/></td></tr>
<tr class="memitem:af430216503558a4cfb9b4647ec9c2646 inherit pub_methods_classDirectlyAddressedSet"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDirectlyAddressedSet.html#af430216503558a4cfb9b4647ec9c2646">getComplement</a> (<a class="el" href="classDirectlyAddressedSet.html">DirectlyAddressedSet</a> *res)=0</td></tr>
<tr class="memdesc:af430216503558a4cfb9b4647ec9c2646 inherit pub_methods_classDirectlyAddressedSet"><td class="mdescLeft">&#160;</td><td class="mdescRight">The complement of the current set, stored in the set res.  <a href="#af430216503558a4cfb9b4647ec9c2646"></a><br/></td></tr>
<tr class="memitem:ace4dc1b4e41e18d0c7cef3fa17c64dc5 inherit pub_methods_classDirectlyAddressedSet"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDirectlyAddressedSet.html#ace4dc1b4e41e18d0c7cef3fa17c64dc5">addAll</a> (<a class="el" href="classDirectlyAddressedSet.html">DirectlyAddressedSet</a> *v)</td></tr>
<tr class="memdesc:ace4dc1b4e41e18d0c7cef3fa17c64dc5 inherit pub_methods_classDirectlyAddressedSet"><td class="mdescLeft">&#160;</td><td class="mdescRight">Union of the current set and a specified set (optional operation).  <a href="#ace4dc1b4e41e18d0c7cef3fa17c64dc5"></a><br/></td></tr>
<tr class="memitem:a385114535ad6bc398181459b1b01c75a inherit pub_methods_classDirectlyAddressedSet"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDirectlyAddressedSet.html#a385114535ad6bc398181459b1b01c75a">symDiff</a> (<a class="el" href="classDirectlyAddressedSet.html">DirectlyAddressedSet</a> *v)</td></tr>
<tr class="memdesc:a385114535ad6bc398181459b1b01c75a inherit pub_methods_classDirectlyAddressedSet"><td class="mdescLeft">&#160;</td><td class="mdescRight">Symmetric difference of the current set and a specified set (optional operation)  <a href="#a385114535ad6bc398181459b1b01c75a"></a><br/></td></tr>
<tr class="memitem:af45e06fe443a71cb91635ddd397ec35f inherit pub_methods_classDirectlyAddressedSet"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDirectlyAddressedSet.html#af45e06fe443a71cb91635ddd397ec35f">removeAll</a> (<a class="el" href="classDirectlyAddressedSet.html">DirectlyAddressedSet</a> *v)</td></tr>
<tr class="memdesc:af45e06fe443a71cb91635ddd397ec35f inherit pub_methods_classDirectlyAddressedSet"><td class="mdescLeft">&#160;</td><td class="mdescRight">Difference of the current set and a specified set (optional operation)  <a href="#af45e06fe443a71cb91635ddd397ec35f"></a><br/></td></tr>
<tr class="memitem:a722dd648d9caa8449f26741f53b85ba2 inherit pub_methods_classDirectlyAddressedSet"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDirectlyAddressedSet.html#a722dd648d9caa8449f26741f53b85ba2">retainAll</a> (<a class="el" href="classDirectlyAddressedSet.html">DirectlyAddressedSet</a> *v)</td></tr>
<tr class="memdesc:a722dd648d9caa8449f26741f53b85ba2 inherit pub_methods_classDirectlyAddressedSet"><td class="mdescLeft">&#160;</td><td class="mdescRight">Intersection of the current set and a specified set (optional operation)  <a href="#a722dd648d9caa8449f26741f53b85ba2"></a><br/></td></tr>
<tr class="memitem:a6ab0477539b69fb94e8b8bca622cc187 inherit pub_methods_classDirectlyAddressedSet"><td class="memItemLeft" align="right" valign="top">virtual long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDirectlyAddressedSet.html#a6ab0477539b69fb94e8b8bca622cc187">firstInSet</a> ()</td></tr>
<tr class="memdesc:a6ab0477539b69fb94e8b8bca622cc187 inherit pub_methods_classDirectlyAddressedSet"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determine the first element of the set represented by the current object.  <a href="#a6ab0477539b69fb94e8b8bca622cc187"></a><br/></td></tr>
<tr class="memitem:a798e2503651986e33dd7af1e510f50a6 inherit pub_methods_classDirectlyAddressedSet"><td class="memItemLeft" align="right" valign="top">virtual long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDirectlyAddressedSet.html#a798e2503651986e33dd7af1e510f50a6">firstInCompl</a> ()=0</td></tr>
<tr class="memdesc:a798e2503651986e33dd7af1e510f50a6 inherit pub_methods_classDirectlyAddressedSet"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determine the first element of the complement of the set represented by the current object.  <a href="#a798e2503651986e33dd7af1e510f50a6"></a><br/></td></tr>
<tr class="memitem:a3340fde7ad523ac0c3e121b898be1e3c inherit pub_methods_classDirectlyAddressedSet"><td class="memItemLeft" align="right" valign="top">virtual long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDirectlyAddressedSet.html#a3340fde7ad523ac0c3e121b898be1e3c">cardOfSet</a> () const </td></tr>
<tr class="memdesc:a3340fde7ad523ac0c3e121b898be1e3c inherit pub_methods_classDirectlyAddressedSet"><td class="mdescLeft">&#160;</td><td class="mdescRight">The cardinality of the set represented by the object.  <a href="#a3340fde7ad523ac0c3e121b898be1e3c"></a><br/></td></tr>
<tr class="memitem:a86fbb2d9a8fc212f513d0ded3bee67dc inherit pub_methods_classDirectlyAddressedSet"><td class="memItemLeft" align="right" valign="top">virtual long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDirectlyAddressedSet.html#a86fbb2d9a8fc212f513d0ded3bee67dc">cardOfCompl</a> () const </td></tr>
<tr class="memdesc:a86fbb2d9a8fc212f513d0ded3bee67dc inherit pub_methods_classDirectlyAddressedSet"><td class="mdescLeft">&#160;</td><td class="mdescRight">The cardinality of the complement of the set represented by the object.  <a href="#a86fbb2d9a8fc212f513d0ded3bee67dc"></a><br/></td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:a83d95bd5e550e2f7dc4eceae0df394c3"><td class="memItemLeft" align="right" valign="top">virtual T *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBitMapDirectlyAddressedSet.html#a83d95bd5e550e2f7dc4eceae0df394c3">arrayNode</a> (long i) const =0</td></tr>
<tr class="memdesc:a83d95bd5e550e2f7dc4eceae0df394c3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determines the node of this array for enumeration of 1-bits with specified index.  <a href="#a83d95bd5e550e2f7dc4eceae0df394c3"></a><br/></td></tr>
<tr class="memitem:a99e93d7a2081455dc5c4b201cd7405f6"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBitMapDirectlyAddressedSet.html#a99e93d7a2081455dc5c4b201cd7405f6">BitMapDirectlyAddressedSet</a> (long <a class="el" href="classDirectlyAddressedSet.html#a72575479afb5dd067267fa92913bc80a">u</a>)</td></tr>
<tr class="memdesc:a99e93d7a2081455dc5c4b201cd7405f6"><td class="mdescLeft">&#160;</td><td class="mdescRight">A simple constructor.  <a href="#a99e93d7a2081455dc5c4b201cd7405f6"></a><br/></td></tr>
<tr class="inherit_header pro_methods_classDirectlyAddressedSet"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classDirectlyAddressedSet')"><img src="closed.png" alt="-"/>&nbsp;Protected Member Functions inherited from <a class="el" href="classDirectlyAddressedSet.html">DirectlyAddressedSet</a></td></tr>
<tr class="memitem:ad5b694fa37b9b6d2fe79ddee76724de5 inherit pro_methods_classDirectlyAddressedSet"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDirectlyAddressedSet.html#ad5b694fa37b9b6d2fe79ddee76724de5">DirectlyAddressedSet</a> (long size)</td></tr>
<tr class="memdesc:ad5b694fa37b9b6d2fe79ddee76724de5 inherit pro_methods_classDirectlyAddressedSet"><td class="mdescLeft">&#160;</td><td class="mdescRight">Basic constructor.  <a href="#ad5b694fa37b9b6d2fe79ddee76724de5"></a><br/></td></tr>
<tr class="inherit_header pub_methods_classBitTools"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classBitTools')"><img src="closed.png" alt="-"/>&nbsp;Protected Member Functions inherited from <a class="el" href="classBitTools.html">BitTools< T ></a></td></tr>
<tr class="memitem:a3c359fa380f74a3e2b6f260e5eaebf32 inherit pub_methods_classBitTools"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBitTools.html#a3c359fa380f74a3e2b6f260e5eaebf32">BitTools</a> ()</td></tr>
<tr class="memitem:a5f8fe4c0a10ecf879b5a49453ebb5e77 inherit pub_methods_classBitTools"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBitTools.html#a5f8fe4c0a10ecf879b5a49453ebb5e77">inline_ceillog</a> (long n, int b)</td></tr>
<tr class="memdesc:a5f8fe4c0a10ecf879b5a49453ebb5e77 inherit pub_methods_classBitTools"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determine the ceil of the logarithmic of the specified value in the specified basis.  <a href="#a5f8fe4c0a10ecf879b5a49453ebb5e77"></a><br/></td></tr>
<tr class="memitem:a44f045bd52df3f9a637f227ea499eb77 inherit pub_methods_classBitTools"><td class="memItemLeft" align="right" valign="top">long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBitTools.html#a44f045bd52df3f9a637f227ea499eb77">quotient</a> (long i)</td></tr>
<tr class="memitem:a0d23be61dc34b44bbf6aee9d26436ff4 inherit pub_methods_classBitTools"><td class="memItemLeft" align="right" valign="top">long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBitTools.html#a0d23be61dc34b44bbf6aee9d26436ff4">remainder</a> (long i)</td></tr>
<tr class="memitem:a6092e744e242ae0b2323e8ee0743315b inherit pub_methods_classBitTools"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
<tr class="memitem:a6092e744e242ae0b2323e8ee0743315b"><td class="memTemplItemLeft" align="right" valign="top">const int&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classBitTools.html#a6092e744e242ae0b2323e8ee0743315b">__masksz</a></td></tr>
<tr class="memitem:a65ed78b408dcd444e15d56e266d9bb83 inherit pub_methods_classBitTools"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
<tr class="memitem:a65ed78b408dcd444e15d56e266d9bb83"><td class="memTemplItemLeft" align="right" valign="top">const int&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classBitTools.html#a65ed78b408dcd444e15d56e266d9bb83">__masksz</a></td></tr>
<tr class="memitem:a0628cd7273b0f3c661c6957a04789204 inherit pub_methods_classBitTools"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
<tr class="memitem:a0628cd7273b0f3c661c6957a04789204"><td class="memTemplItemLeft" align="right" valign="top">const int&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classBitTools.html#a0628cd7273b0f3c661c6957a04789204">__masksz</a></td></tr>
<tr class="memitem:a43fff7435def14556b9ac4437d54631e inherit pub_methods_classBitTools"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
<tr class="memitem:a43fff7435def14556b9ac4437d54631e"><td class="memTemplItemLeft" align="right" valign="top">const unsigned int&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classBitTools.html#a43fff7435def14556b9ac4437d54631e">__mask</a> []</td></tr>
<tr class="memitem:a34f64f79042d33f89393c106ec35c68f inherit pub_methods_classBitTools"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
<tr class="memitem:a34f64f79042d33f89393c106ec35c68f"><td class="memTemplItemLeft" align="right" valign="top">const unsigned long&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classBitTools.html#a34f64f79042d33f89393c106ec35c68f">__mask</a> []</td></tr>
<tr class="memitem:ae75903a3c07898ddfa45208b88da9b85 inherit pub_methods_classBitTools"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
<tr class="memitem:ae75903a3c07898ddfa45208b88da9b85"><td class="memTemplItemLeft" align="right" valign="top">const unsigned long long&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classBitTools.html#ae75903a3c07898ddfa45208b88da9b85">__mask</a> [<a class="el" href="classBitTools.html#a22e46edeb0343e4132da31deddb80a75">__masksz</a>]</td></tr>
<tr class="memitem:a426045aa5a3367cc4a21517b6ff1630a inherit pub_methods_classBitTools"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
<tr class="memitem:a426045aa5a3367cc4a21517b6ff1630a"><td class="memTemplItemLeft" align="right" valign="top">int&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classBitTools.html#a426045aa5a3367cc4a21517b6ff1630a">builtinCounter</a> (unsigned long long i)</td></tr>
<tr class="memitem:ad5632728b31f807dcef08061ab0d25dd inherit pub_methods_classBitTools"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
<tr class="memitem:ad5632728b31f807dcef08061ab0d25dd"><td class="memTemplItemLeft" align="right" valign="top">int&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classBitTools.html#ad5632728b31f807dcef08061ab0d25dd">builtinCounter</a> (unsigned long i)</td></tr>
<tr class="memitem:a6d031197e433910e3d810679b18fc520 inherit pub_methods_classBitTools"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
<tr class="memitem:a6d031197e433910e3d810679b18fc520"><td class="memTemplItemLeft" align="right" valign="top">int&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classBitTools.html#a6d031197e433910e3d810679b18fc520">builtinCounter</a> (unsigned int i)</td></tr>
<tr class="memitem:a1bd1e299c764f04ade414f3b629d45c2 inherit pub_methods_classBitTools"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
<tr class="memitem:a1bd1e299c764f04ade414f3b629d45c2"><td class="memTemplItemLeft" align="right" valign="top">int&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classBitTools.html#a1bd1e299c764f04ade414f3b629d45c2">builtinLeast</a> (unsigned long long w)</td></tr>
<tr class="memitem:aaa24638176af864b50b9937809e8378d inherit pub_methods_classBitTools"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
<tr class="memitem:aaa24638176af864b50b9937809e8378d"><td class="memTemplItemLeft" align="right" valign="top">int&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classBitTools.html#aaa24638176af864b50b9937809e8378d">builtinLeast</a> (unsigned long w)</td></tr>
<tr class="memitem:ac859bed9beaeab4009659b24b6148b51 inherit pub_methods_classBitTools"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
<tr class="memitem:ac859bed9beaeab4009659b24b6148b51"><td class="memTemplItemLeft" align="right" valign="top">int&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classBitTools.html#ac859bed9beaeab4009659b24b6148b51">builtinLeast</a> (unsigned int w)</td></tr>
<tr class="memitem:a23f415b0ff8a6abd4e81f040d3365b7c inherit pub_methods_classBitTools"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
<tr class="memitem:a23f415b0ff8a6abd4e81f040d3365b7c"><td class="memTemplItemLeft" align="right" valign="top">int&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classBitTools.html#a23f415b0ff8a6abd4e81f040d3365b7c">builtinNextLeast</a> (unsigned long long w, int i)</td></tr>
<tr class="memitem:a92271e7a07e7755f38ebe2333ff479cd inherit pub_methods_classBitTools"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
<tr class="memitem:a92271e7a07e7755f38ebe2333ff479cd"><td class="memTemplItemLeft" align="right" valign="top">int&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classBitTools.html#a92271e7a07e7755f38ebe2333ff479cd">builtinNextLeast</a> (unsigned long w, int i)</td></tr>
<tr class="memitem:ab2732bbf48d3c5eb0a36305bf859200d inherit pub_methods_classBitTools"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
<tr class="memitem:ab2732bbf48d3c5eb0a36305bf859200d"><td class="memTemplItemLeft" align="right" valign="top">int&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classBitTools.html#ab2732bbf48d3c5eb0a36305bf859200d">builtinNextLeast</a> (unsigned int w, int i)</td></tr>
<tr class="memitem:a116e71200b9626b920500732c8a2c437 inherit pub_methods_classBitTools"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
<tr class="memitem:a116e71200b9626b920500732c8a2c437"><td class="memTemplItemLeft" align="right" valign="top">int&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classBitTools.html#a116e71200b9626b920500732c8a2c437">builtinMost</a> (unsigned long long i)</td></tr>
<tr class="memitem:aff3821ce198b77d97a2388830d47e09a inherit pub_methods_classBitTools"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
<tr class="memitem:aff3821ce198b77d97a2388830d47e09a"><td class="memTemplItemLeft" align="right" valign="top">int&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classBitTools.html#aff3821ce198b77d97a2388830d47e09a">builtinMost</a> (unsigned long i)</td></tr>
<tr class="memitem:a9f606f94651f8a026b683a8b2d7c369e inherit pub_methods_classBitTools"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
<tr class="memitem:a9f606f94651f8a026b683a8b2d7c369e"><td class="memTemplItemLeft" align="right" valign="top">int&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classBitTools.html#a9f606f94651f8a026b683a8b2d7c369e">builtinMost</a> (unsigned int i)</td></tr>
<tr class="memitem:aec8c4ee6024218452b6f097377b2342a inherit pub_methods_classBitTools"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
<tr class="memitem:aec8c4ee6024218452b6f097377b2342a"><td class="memTemplItemLeft" align="right" valign="top">int&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classBitTools.html#aec8c4ee6024218452b6f097377b2342a">builtinNextMost</a> (unsigned long long w, int i)</td></tr>
<tr class="memitem:a0ce7ed635a71702238ab91acd9cd0493 inherit pub_methods_classBitTools"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
<tr class="memitem:a0ce7ed635a71702238ab91acd9cd0493"><td class="memTemplItemLeft" align="right" valign="top">int&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classBitTools.html#a0ce7ed635a71702238ab91acd9cd0493">builtinNextMost</a> (unsigned long w, int i)</td></tr>
<tr class="memitem:acb282eff88c9d4c9ec3f83635a0110d2 inherit pub_methods_classBitTools"><td class="memTemplParams" colspan="2">template&lt;&gt; </td></tr>
<tr class="memitem:acb282eff88c9d4c9ec3f83635a0110d2"><td class="memTemplItemLeft" align="right" valign="top">int&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classBitTools.html#acb282eff88c9d4c9ec3f83635a0110d2">builtinNextMost</a> (unsigned int w, int i)</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="pro-attribs"></a>
Protected Attributes</h2></td></tr>
<tr class="memitem:a1e76fedb462f45a3755792fa5ed656e8"><td class="memItemLeft" align="right" valign="top">long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBitMapDirectlyAddressedSet.html#a1e76fedb462f45a3755792fa5ed656e8">sizeT</a></td></tr>
<tr class="inherit_header pro_attribs_classDirectlyAddressedSet"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classDirectlyAddressedSet')"><img src="closed.png" alt="-"/>&nbsp;Protected Attributes inherited from <a class="el" href="classDirectlyAddressedSet.html">DirectlyAddressedSet</a></td></tr>
<tr class="memitem:a72575479afb5dd067267fa92913bc80a inherit pro_attribs_classDirectlyAddressedSet"><td class="memItemLeft" align="right" valign="top">const long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDirectlyAddressedSet.html#a72575479afb5dd067267fa92913bc80a">u</a></td></tr>
<tr class="memdesc:a72575479afb5dd067267fa92913bc80a inherit pro_attribs_classDirectlyAddressedSet"><td class="mdescLeft">&#160;</td><td class="mdescRight">the size of the universe  <a href="#a72575479afb5dd067267fa92913bc80a"></a><br/></td></tr>
<tr class="memitem:ab50aba05f27ce2c0f6b1627df11b8733 inherit pro_attribs_classDirectlyAddressedSet"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classDirectlyAddressedSet_1_1Iterator.html">Iterator</a> *const&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDirectlyAddressedSet.html#ab50aba05f27ce2c0f6b1627df11b8733">setIt</a></td></tr>
<tr class="memdesc:ab50aba05f27ce2c0f6b1627df11b8733 inherit pro_attribs_classDirectlyAddressedSet"><td class="mdescLeft">&#160;</td><td class="mdescRight">internal iterator used to implement stateless enumeration methods on this set  <a href="#ab50aba05f27ce2c0f6b1627df11b8733"></a><br/></td></tr>
<tr class="memitem:a663e401ccbabdf2583d8011c20b4997d inherit pro_attribs_classDirectlyAddressedSet"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classDirectlyAddressedSet_1_1Iterator.html">Iterator</a> *const&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDirectlyAddressedSet.html#a663e401ccbabdf2583d8011c20b4997d">complIt</a></td></tr>
<tr class="memdesc:a663e401ccbabdf2583d8011c20b4997d inherit pro_attribs_classDirectlyAddressedSet"><td class="mdescLeft">&#160;</td><td class="mdescRight">internal iterator used to implement stateless enumeration methods on the complement of this set  <a href="#a663e401ccbabdf2583d8011c20b4997d"></a><br/></td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_static_methods_classBitTools"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classBitTools')"><img src="closed.png" alt="-"/>&nbsp;Static Protected Member Functions inherited from <a class="el" href="classBitTools.html">BitTools< T ></a></td></tr>
<tr class="memitem:a4fd88d9c76d81083a9f82405a2a82ea3 inherit pub_static_methods_classBitTools"><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBitTools.html#a4fd88d9c76d81083a9f82405a2a82ea3">builtinCounter</a> (T i)</td></tr>
<tr class="memdesc:a4fd88d9c76d81083a9f82405a2a82ea3 inherit pub_static_methods_classBitTools"><td class="mdescLeft">&#160;</td><td class="mdescRight">Builtin function to determine the number of bits 1 in the word i.  <a href="#a4fd88d9c76d81083a9f82405a2a82ea3"></a><br/></td></tr>
<tr class="memitem:ac9f995241d437eea2ad426c6bee873a6 inherit pub_static_methods_classBitTools"><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBitTools.html#ac9f995241d437eea2ad426c6bee873a6">builtinLeast</a> (T w)</td></tr>
<tr class="memdesc:ac9f995241d437eea2ad426c6bee873a6 inherit pub_static_methods_classBitTools"><td class="mdescLeft">&#160;</td><td class="mdescRight">Builtin function to determine the least significant bit 1 in the word i.  <a href="#ac9f995241d437eea2ad426c6bee873a6"></a><br/></td></tr>
<tr class="memitem:a6955692f32764e20095546bc66dc39ac inherit pub_static_methods_classBitTools"><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBitTools.html#a6955692f32764e20095546bc66dc39ac">builtinNextLeast</a> (T w, int i)</td></tr>
<tr class="memitem:a35c375672d6450d4344f5bb90c3e6742 inherit pub_static_methods_classBitTools"><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBitTools.html#a35c375672d6450d4344f5bb90c3e6742">builtinMost</a> (T i)</td></tr>
<tr class="memdesc:a35c375672d6450d4344f5bb90c3e6742 inherit pub_static_methods_classBitTools"><td class="mdescLeft">&#160;</td><td class="mdescRight">Builtin function to determine the most significant bit 1 in the word i.  <a href="#a35c375672d6450d4344f5bb90c3e6742"></a><br/></td></tr>
<tr class="memitem:a9ee21a0cd8ac8243b25dbbdce0ee5e6b inherit pub_static_methods_classBitTools"><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBitTools.html#a9ee21a0cd8ac8243b25dbbdce0ee5e6b">builtinNextMost</a> (T w, int i)</td></tr>
<tr class="inherit_header pro_static_attribs_classDirectlyAddressedSet"><td colspan="2" onclick="javascript:toggleInherit('pro_static_attribs_classDirectlyAddressedSet')"><img src="closed.png" alt="-"/>&nbsp;Static Protected Attributes inherited from <a class="el" href="classDirectlyAddressedSet.html">DirectlyAddressedSet</a></td></tr>
<tr class="memitem:a27a20af4d1294aaf58d199116393b459 inherit pro_static_attribs_classDirectlyAddressedSet"><td class="memItemLeft" align="right" valign="top">static char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDirectlyAddressedSet.html#a27a20af4d1294aaf58d199116393b459">bitvector</a> = NULL</td></tr>
<tr class="memdesc:a27a20af4d1294aaf58d199116393b459 inherit pro_static_attribs_classDirectlyAddressedSet"><td class="mdescLeft">&#160;</td><td class="mdescRight">to be returned by <a class="el" href="classDirectlyAddressedSet.html#a53b903fb7339a9cfa0b97242f984b01c" title="Create a vector of the elements in the set.">toArray()</a>  <a href="#a27a20af4d1294aaf58d199116393b459"></a><br/></td></tr>
<tr class="memitem:aa7d3386c32161ef55855487251d4d990 inherit pro_static_attribs_classDirectlyAddressedSet"><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classDirectlyAddressedSet.html#aa7d3386c32161ef55855487251d4d990">nbv</a> = 0</td></tr>
<tr class="memdesc:aa7d3386c32161ef55855487251d4d990 inherit pro_static_attribs_classDirectlyAddressedSet"><td class="mdescLeft">&#160;</td><td class="mdescRight">size of <a class="el" href="classDirectlyAddressedSet.html#a27a20af4d1294aaf58d199116393b459" title="to be returned by toArray()">vEBTree&lt;T&gt;::bitvector</a>, in number of bytes  <a href="#aa7d3386c32161ef55855487251d4d990"></a><br/></td></tr>
<tr class="inherit_header pub_static_attribs_classBitTools"><td colspan="2" onclick="javascript:toggleInherit('pub_static_attribs_classBitTools')"><img src="closed.png" alt="-"/>&nbsp;Static Protected Attributes inherited from <a class="el" href="classBitTools.html">BitTools< T ></a></td></tr>
<tr class="memitem:a22e46edeb0343e4132da31deddb80a75 inherit pub_static_attribs_classBitTools"><td class="memItemLeft" align="right" valign="top">static const int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBitTools.html#a22e46edeb0343e4132da31deddb80a75">__masksz</a></td></tr>
<tr class="memitem:a866bbf63e05853a04ae85f529993208e inherit pub_static_attribs_classBitTools"><td class="memItemLeft" align="right" valign="top">static const T&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBitTools.html#a866bbf63e05853a04ae85f529993208e">__mask</a> []</td></tr>
<tr class="memitem:a945a81cb377cc48b1303c3bb41c21803 inherit pub_static_attribs_classBitTools"><td class="memItemLeft" align="right" valign="top">static const unsigned long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classBitTools.html#a945a81cb377cc48b1303c3bb41c21803">__nnodesh</a> [8]</td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><h3>template&lt;typename T&gt;<br/>
class BitMapDirectlyAddressedSet&lt; T &gt;</h3>

<p>A <a class="el" href="classDirectlyAddressedSet.html" title="A static or dynamic set of elements with direct addressing.">DirectlyAddressedSet</a> implemented with an array of nodes, each node corresponding to a word of the specified type. </p>
<p>It is an implementation of the abstract class <a class="el" href="classDirectlyAddressedSet.html" title="A static or dynamic set of elements with direct addressing.">DirectlyAddressedSet</a> assuming a linear array of bits as the data structure, implementing iterators. In such an implementation, each key acts as an index in the array. More precisely, key <img class="formulaInl" alt="$i$" src="form_28.png"/> corresponds to the <img class="formulaInl" alt="$(i \mbox{ mod } b)$" src="form_29.png"/>-least significant bit of the <img class="formulaInl" alt="$(\lfloor i/b \rfloor)$" src="form_30.png"/>-th node of the array, where <img class="formulaInl" alt="$b$" src="form_31.png"/> is the size of a node.</p>
<p>This class is designed to be used with any implementation of the array of bits. Typically, two possible implementations are vectors and hash tables of nodes.</p>
<dl class="tparams"><dt>Template Parameters:</dt><dd>
  <table class="tparams">
    <tr><td class="paramname">the</td><td>type of the array, defining <img class="formulaInl" alt="$b$" src="form_31.png"/> as <code>sizeof(T)</code>. </td></tr>
  </table>
  </dd>
</dl>
</div><hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a99e93d7a2081455dc5c4b201cd7405f6"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classBitMapDirectlyAddressedSet.html">BitMapDirectlyAddressedSet</a>&lt; T &gt;::<a class="el" href="classBitMapDirectlyAddressedSet.html">BitMapDirectlyAddressedSet</a> </td>
          <td>(</td>
          <td class="paramtype">long&#160;</td>
          <td class="paramname"><em>u</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>A simple constructor. </p>
<p>Computes the size of the array and allocates the corresponding memeory space.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">u</td><td>the size of the universe </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a4fa7b12ff3c5ca64ea9c4048dda98754"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classBitMapDirectlyAddressedSet.html">BitMapDirectlyAddressedSet</a>&lt; T &gt;::~<a class="el" href="classBitMapDirectlyAddressedSet.html">BitMapDirectlyAddressedSet</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>The simple destructor. </p>
<p>Free the memory used. </p>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a98721fe36c0309b662f0a4053b8c10b3"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void <a class="el" href="classBitMapDirectlyAddressedSet.html">BitMapDirectlyAddressedSet</a>&lt; T &gt;::allToCompl </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Remove all the elements of the set. </p>
<p>Implemented with a C function memset.</p>
<dl class="section see"><dt>See also:</dt><dd>memset() </dd></dl>

<p>Implements <a class="el" href="classDirectlyAddressedSet.html#a07ad3c0c3ca7df962ad9af56df76a098">DirectlyAddressedSet</a>.</p>

<p>Implemented in <a class="el" href="classHashBitMapDirectlyAddressedSet.html#ad2fa35f0f255c7ab7c996ec3aacb1aca">HashBitMapDirectlyAddressedSet&lt; T &gt;</a>, <a class="el" href="classArrayBitMapDirectlyAddressedSet.html#a10c39854072d23aef7f13a4f59d94a7a">ArrayBitMapDirectlyAddressedSet&lt; T &gt;</a>, and <a class="el" href="classMultiLevelDirectlyAddressedSet.html#ad23fa9172361ef5cb03fe9a01893a36d">MultiLevelDirectlyAddressedSet&lt; T &gt;</a>.</p>

</div>
</div>
<a class="anchor" id="a1886374dcac4d2468c71c98aea3f2f06"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void <a class="el" href="classBitMapDirectlyAddressedSet.html">BitMapDirectlyAddressedSet</a>&lt; T &gt;::allToSet </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Add all the elements in the universe to the set. </p>
<p>Implemented with a C function memset.</p>
<dl class="section see"><dt>See also:</dt><dd>memset() </dd></dl>

<p>Implements <a class="el" href="classDirectlyAddressedSet.html#aef0b3fb51862f67e872bd9c984e18b7c">DirectlyAddressedSet</a>.</p>

<p>Implemented in <a class="el" href="classHashBitMapDirectlyAddressedSet.html#a9ef5943ad42f0c075dbc64576aacf605">HashBitMapDirectlyAddressedSet&lt; T &gt;</a>, <a class="el" href="classArrayBitMapDirectlyAddressedSet.html#abea99d9990d0a7942847f44f60cf960d">ArrayBitMapDirectlyAddressedSet&lt; T &gt;</a>, and <a class="el" href="classMultiLevelDirectlyAddressedSet.html#a37cc711f1f2685fed602ed79e28045b2">MultiLevelDirectlyAddressedSet&lt; T &gt;</a>.</p>

</div>
</div>
<a class="anchor" id="a83d95bd5e550e2f7dc4eceae0df394c3"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual T* <a class="el" href="classBitMapDirectlyAddressedSet.html">BitMapDirectlyAddressedSet</a>&lt; T &gt;::arrayNode </td>
          <td>(</td>
          <td class="paramtype">long&#160;</td>
          <td class="paramname"><em>i</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Determines the node of this array for enumeration of 1-bits with specified index. </p>
<p>This method implements the data structure used to store the nodes of this array.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">i</td><td>the index</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>the node corresponding to the specified index </dd></dl>

<p>Implemented in <a class="el" href="classHashBitMapDirectlyAddressedSet.html#ab819fab558d3ff610147626c0d8a9d71">HashBitMapDirectlyAddressedSet&lt; T &gt;</a>, and <a class="el" href="classArrayBitMapDirectlyAddressedSet.html#abf1119b512a19a19fc6d2efe6b1037cd">ArrayBitMapDirectlyAddressedSet&lt; T &gt;</a>.</p>

</div>
</div>
<a class="anchor" id="a17a8959c7a96ae90a755f7106ff06093"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classDirectlyAddressedSet.html">DirectlyAddressedSet</a>* <a class="el" href="classBitMapDirectlyAddressedSet.html">BitMapDirectlyAddressedSet</a>&lt; T &gt;::clone </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Create a copy of the current object. </p>
<p>Copy the whole vector of bits to a other structure.</p>
<dl class="section return"><dt>Returns:</dt><dd>a copy if the current object. </dd></dl>

<p>Implements <a class="el" href="classDirectlyAddressedSet.html#a849f2439a4b639973e8f85652394b70f">DirectlyAddressedSet</a>.</p>

<p>Implemented in <a class="el" href="classArrayBitMapDirectlyAddressedSet.html#a841150a59c3949821d092f9a8b1f6060">ArrayBitMapDirectlyAddressedSet&lt; T &gt;</a>, and <a class="el" href="classMultiLevelDirectlyAddressedSet.html#aaf18952745f809e26f634ad47d75ca9a">MultiLevelDirectlyAddressedSet&lt; T &gt;</a>.</p>

</div>
</div>
<a class="anchor" id="a31d1c87fec3e523b241595d4cb73a808"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void <a class="el" href="classBitMapDirectlyAddressedSet.html">BitMapDirectlyAddressedSet</a>&lt; T &gt;::diffOf </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classDirectlyAddressedSet.html">DirectlyAddressedSet</a> *&#160;</td>
          <td class="paramname"><em>v</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classDirectlyAddressedSet.html">DirectlyAddressedSet</a> *&#160;</td>
          <td class="paramname"><em>w</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Adds to this set all the elements in the difference of two specified sets. </p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">v</td><td>one set to be operated </td></tr>
    <tr><td class="paramname">w</td><td>the other set</td></tr>
  </table>
  </dd>
</dl>
<dl class="section see"><dt>See also:</dt><dd><a class="el" href="classDirectlyAddressedSet.html#af45e06fe443a71cb91635ddd397ec35f" title="Difference of the current set and a specified set (optional operation)">removeAll()</a> </dd></dl>

<p>Reimplemented from <a class="el" href="classDirectlyAddressedSet.html#ad671fb37b8eee9801d1550fe92504ab0">DirectlyAddressedSet</a>.</p>

<p>Reimplemented in <a class="el" href="classHashBitMapDirectlyAddressedSet.html#a11d9d6369c29f5ca084f25c4b5b33e36">HashBitMapDirectlyAddressedSet&lt; T &gt;</a>.</p>

</div>
</div>
<a class="anchor" id="a8bacc011da032898e445e0bd41dc5f14"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classBitMapDirectlyAddressedSet.html">BitMapDirectlyAddressedSet</a>&lt; T &gt;::flip </td>
          <td>(</td>
          <td class="paramtype">long&#160;</td>
          <td class="paramname"><em>i</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Swap a element between the set and the complement. </p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">i</td><td>the especified element. </td></tr>
  </table>
  </dd>
</dl>

<p>Implements <a class="el" href="classDirectlyAddressedSet.html#a0f014bb0aa9685b3eb7c5dc34c35042d">DirectlyAddressedSet</a>.</p>

<p>Reimplemented in <a class="el" href="classHashBitMapDirectlyAddressedSet.html#a2e4cfe9c57b5366d148b5ab106986759">HashBitMapDirectlyAddressedSet&lt; T &gt;</a>.</p>

</div>
</div>
<a class="anchor" id="a3dc0ff33cdfede898cfd29d10caa0ad6"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void <a class="el" href="classBitMapDirectlyAddressedSet.html">BitMapDirectlyAddressedSet</a>&lt; T &gt;::flipAll </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>The complement of the current set. </p>
<p>Implemented as a linear search in each word of the vector. </p>

<p>Implements <a class="el" href="classDirectlyAddressedSet.html#a254e14e6aad4b4b7969acf896fd750a2">DirectlyAddressedSet</a>.</p>

<p>Implemented in <a class="el" href="classHashBitMapDirectlyAddressedSet.html#a4eff7810d15044ce6d63dafc5aaf0d64">HashBitMapDirectlyAddressedSet&lt; T &gt;</a>, and <a class="el" href="classArrayBitMapDirectlyAddressedSet.html#a00dea6233fde1a131e0edf98533e3721">ArrayBitMapDirectlyAddressedSet&lt; T &gt;</a>.</p>

</div>
</div>
<a class="anchor" id="a711f4b377ff461e9773b2a3eabcf89af"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void <a class="el" href="classBitMapDirectlyAddressedSet.html">BitMapDirectlyAddressedSet</a>&lt; T &gt;::intersectOf </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classDirectlyAddressedSet.html">DirectlyAddressedSet</a> *&#160;</td>
          <td class="paramname"><em>v</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classDirectlyAddressedSet.html">DirectlyAddressedSet</a> *&#160;</td>
          <td class="paramname"><em>w</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Adds to this set all the elements in the intersection of two specified sets. </p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">v</td><td>one set to be operated </td></tr>
    <tr><td class="paramname">w</td><td>the other set</td></tr>
  </table>
  </dd>
</dl>
<dl class="section see"><dt>See also:</dt><dd><a class="el" href="classDirectlyAddressedSet.html#a722dd648d9caa8449f26741f53b85ba2" title="Intersection of the current set and a specified set (optional operation)">retainAll()</a> </dd></dl>

<p>Reimplemented from <a class="el" href="classDirectlyAddressedSet.html#aaf806e606c647a25918827d95467db5d">DirectlyAddressedSet</a>.</p>

<p>Reimplemented in <a class="el" href="classHashBitMapDirectlyAddressedSet.html#a63085c70d88fb118bdc85b98d86d3804">HashBitMapDirectlyAddressedSet&lt; T &gt;</a>.</p>

</div>
</div>
<a class="anchor" id="aae0d63c2cf0f6dbf65657448b14287b5"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classBitMapDirectlyAddressedSet.html">BitMapDirectlyAddressedSet</a>&lt; T &gt;::isInSet </td>
          <td>(</td>
          <td class="paramtype">long&#160;</td>
          <td class="paramname"><em>i</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Verify if a element of the universe is in the set. </p>
<p>Verify if the bit in the specified position is 1. This method is optmal and if the especified position is out of the vector range an error will occur.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">i</td><td>the specified element</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>true if i belongs to the set and false otherwise </dd></dl>

<p>Implements <a class="el" href="classDirectlyAddressedSet.html#ac579abc5639d6b55f3d16a177e88ad40">DirectlyAddressedSet</a>.</p>

</div>
</div>
<a class="anchor" id="adfd95747fa6f3852640b6f291a515d5f"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classDirectlyAddressedSet_1_1Iterator.html">DirectlyAddressedSet::Iterator</a> * <a class="el" href="classBitMapDirectlyAddressedSet.html">BitMapDirectlyAddressedSet</a>&lt; T &gt;::newComplIterator </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>An Iterator for the complement of the set represented by the object. </p>
<p>Return an iterator to enumerate all the elements of the universe not belonging to this object</p>
<dl class="section return"><dt>Returns:</dt><dd>an iterator to the complement of the set </dd></dl>

<p>Implements <a class="el" href="classDirectlyAddressedSet.html#a2467222186e9bf62f8ca6daabe3628f9">DirectlyAddressedSet</a>.</p>

<p>Reimplemented in <a class="el" href="classMultiLevelDirectlyAddressedSet.html#a9a2bdb4e574330b4f0680f2767cf1e2c">MultiLevelDirectlyAddressedSet&lt; T &gt;</a>.</p>

</div>
</div>
<a class="anchor" id="adf904ffa5738d522834a5ef3cebec79d"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classDirectlyAddressedSet_1_1Iterator.html">DirectlyAddressedSet::Iterator</a> * <a class="el" href="classBitMapDirectlyAddressedSet.html">BitMapDirectlyAddressedSet</a>&lt; T &gt;::newIterator </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Starts a new iterator for this set. </p>
<p>Returns an iterator to enumerate all the keys belonging to this object.</p>
<p>The state of the returned iterator is reset to the beginning of the enumeration.</p>
<dl class="section return"><dt>Returns:</dt><dd>the new iterator to the set </dd></dl>

<p>Implements <a class="el" href="classDirectlyAddressedSet.html#acabc40612169e2623d80b19c784e551a">DirectlyAddressedSet</a>.</p>

<p>Reimplemented in <a class="el" href="classMultiLevelDirectlyAddressedSet.html#ae8e98bf9c0d8425405c7aa12d5d376fc">MultiLevelDirectlyAddressedSet&lt; T &gt;</a>.</p>

</div>
</div>
<a class="anchor" id="a0020a54ee383f00263d23e79a94a79a7"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classDirectlyAddressedSet_1_1Iterator.html">DirectlyAddressedSet::Iterator</a> * <a class="el" href="classBitMapDirectlyAddressedSet.html">BitMapDirectlyAddressedSet</a>&lt; T &gt;::newIterator </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classBitMapDirectlyAddressedSet.html">BitMapDirectlyAddressedSet</a>&lt; T &gt; *&#160;</td>
          <td class="paramname"><em>d</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classFilter.html">Filter</a>&lt; T &gt; *&#160;</td>
          <td class="paramname"><em>f</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>An Iterator for the set represented by the object with a filter. </p>
<p>Return an iterator to enumerate all the keys of the set represented by this object and the filter specified as a parameter.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">d</td><td>the <a class="el" href="classDirectlyAddressedSet.html" title="A static or dynamic set of elements with direct addressing.">DirectlyAddressedSet</a> to filter the enumeration. </td></tr>
    <tr><td class="paramname">f</td><td>the filter determining the operation of filtering</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>an iterator to the set </dd></dl>

</div>
</div>
<a class="anchor" id="a0b1150e706365effaf3bf4d25f1f88eb"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classBitMapDirectlyAddressedSet.html">BitMapDirectlyAddressedSet</a>&lt; T &gt;::show </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Reimplemented in <a class="el" href="classArrayBitMapDirectlyAddressedSet.html#a747262b672966eb77a2d7fd375682772">ArrayBitMapDirectlyAddressedSet&lt; T &gt;</a>, <a class="el" href="classMultiLevelDirectlyAddressedSet.html#a4cb9b9aaea4a4d9e2d04482788a843d3">MultiLevelDirectlyAddressedSet&lt; T &gt;</a>, <a class="el" href="classMultiLevelDirectlyAddressedSet.html#a6d2cde6e85fc1d006b2ccdd9f89c304a">MultiLevelDirectlyAddressedSet&lt; T &gt;</a>, and <a class="el" href="classMultiLevelDirectlyAddressedSet.html#a1c7124135232bc7a54c1e944babfae07">MultiLevelDirectlyAddressedSet&lt; T &gt;</a>.</p>

</div>
</div>
<a class="anchor" id="a8ab9c444519d40684247c4bc3c1be4cc"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void <a class="el" href="classBitMapDirectlyAddressedSet.html">BitMapDirectlyAddressedSet</a>&lt; T &gt;::symDiffOf </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classDirectlyAddressedSet.html">DirectlyAddressedSet</a> *&#160;</td>
          <td class="paramname"><em>v</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classDirectlyAddressedSet.html">DirectlyAddressedSet</a> *&#160;</td>
          <td class="paramname"><em>w</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Adds to this set all the elements in the symmetric difference of two specified sets. </p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">v</td><td>one set to be operated </td></tr>
    <tr><td class="paramname">w</td><td>the other set</td></tr>
  </table>
  </dd>
</dl>
<dl class="section see"><dt>See also:</dt><dd><a class="el" href="classDirectlyAddressedSet.html#a385114535ad6bc398181459b1b01c75a" title="Symmetric difference of the current set and a specified set (optional operation)">symDiff()</a> </dd></dl>

<p>Reimplemented from <a class="el" href="classDirectlyAddressedSet.html#a49b2feab5c731dc3d2b3ff316597345a">DirectlyAddressedSet</a>.</p>

<p>Reimplemented in <a class="el" href="classHashBitMapDirectlyAddressedSet.html#aab9895debd859e323c89b005b4b76d4b">HashBitMapDirectlyAddressedSet&lt; T &gt;</a>.</p>

</div>
</div>
<a class="anchor" id="a8e4dd512b40fdada85967c663480878f"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual char* <a class="el" href="classBitMapDirectlyAddressedSet.html">BitMapDirectlyAddressedSet</a>&lt; T &gt;::toArray </td>
          <td>(</td>
          <td class="paramtype">long *&#160;</td>
          <td class="paramname"><em>size</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Create a vector of the elements in the set. </p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">size</td><td>a pointer to store the size of the set.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns:</dt><dd>a array contains all the elements of the set. </dd></dl>

<p>Implements <a class="el" href="classDirectlyAddressedSet.html#a53b903fb7339a9cfa0b97242f984b01c">DirectlyAddressedSet</a>.</p>

<p>Implemented in <a class="el" href="classArrayBitMapDirectlyAddressedSet.html#a63d9f3c1ce9750adc4d4f96793a31697">ArrayBitMapDirectlyAddressedSet&lt; T &gt;</a>, and <a class="el" href="classMultiLevelDirectlyAddressedSet.html#aff41b4ecea502a806cd47a1b28b25ba6">MultiLevelDirectlyAddressedSet&lt; T &gt;</a>.</p>

</div>
</div>
<a class="anchor" id="aa084b0ee63e53920d9cfa662feb3ffeb"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classBitMapDirectlyAddressedSet.html">BitMapDirectlyAddressedSet</a>&lt; T &gt;::toCompl </td>
          <td>(</td>
          <td class="paramtype">long&#160;</td>
          <td class="paramname"><em>i</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Removes the specified key from the set. </p>
<pre class="fragment">Sets the bit in the specified position to 0. This method is optimal and if the
</pre><p> specified position is in a node not in array, then an error will occur.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">i</td><td>the specified key </td></tr>
  </table>
  </dd>
</dl>

<p>Implements <a class="el" href="classDirectlyAddressedSet.html#afe74e2eeeee28e478c34669899dc96fd">DirectlyAddressedSet</a>.</p>

<p>Reimplemented in <a class="el" href="classHashBitMapDirectlyAddressedSet.html#a1f314b97e198be288ee27d3e030086c2">HashBitMapDirectlyAddressedSet&lt; T &gt;</a>.</p>

</div>
</div>
<a class="anchor" id="a304b510e345a395c13f1fdfcbef160e2"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classBitMapDirectlyAddressedSet.html">BitMapDirectlyAddressedSet</a>&lt; T &gt;::toSet </td>
          <td>(</td>
          <td class="paramtype">long&#160;</td>
          <td class="paramname"><em>i</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Adds the specified key to the set. </p>
<p>Set the bit in the specified position to 1. This method is optimal and if the specified position is in a node not in the array, then an error will occur.</p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">i</td><td>the specified key. </td></tr>
  </table>
  </dd>
</dl>

<p>Implements <a class="el" href="classDirectlyAddressedSet.html#a65c7a90ea3d3c767a2a8dbe0f9cde2ee">DirectlyAddressedSet</a>.</p>

<p>Reimplemented in <a class="el" href="classHashBitMapDirectlyAddressedSet.html#aa59c271b8173efe81e481923dd3756a9">HashBitMapDirectlyAddressedSet&lt; T &gt;</a>.</p>

</div>
</div>
<a class="anchor" id="a781346a0534bce876e240cb2cc92d0ac"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void <a class="el" href="classBitMapDirectlyAddressedSet.html">BitMapDirectlyAddressedSet</a>&lt; T &gt;::unionOf </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classDirectlyAddressedSet.html">DirectlyAddressedSet</a> *&#160;</td>
          <td class="paramname"><em>v</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classDirectlyAddressedSet.html">DirectlyAddressedSet</a> *&#160;</td>
          <td class="paramname"><em>w</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Adds to this set all the elements in the union of two specified sets. </p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">v</td><td>one set to be operated </td></tr>
    <tr><td class="paramname">w</td><td>the other set</td></tr>
  </table>
  </dd>
</dl>
<dl class="section see"><dt>See also:</dt><dd><a class="el" href="classDirectlyAddressedSet.html#ace4dc1b4e41e18d0c7cef3fa17c64dc5" title="Union of the current set and a specified set (optional operation).">addAll()</a> </dd></dl>

<p>Reimplemented from <a class="el" href="classDirectlyAddressedSet.html#a574cd41ea4981a5ff94ce64337eb0cdf">DirectlyAddressedSet</a>.</p>

<p>Reimplemented in <a class="el" href="classHashBitMapDirectlyAddressedSet.html#a93c52f072e3e1106697084f68c525988">HashBitMapDirectlyAddressedSet&lt; T &gt;</a>.</p>

</div>
</div>
<hr/><h2>Member Data Documentation</h2>
<a class="anchor" id="a1e76fedb462f45a3755792fa5ed656e8"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">long <a class="el" href="classBitMapDirectlyAddressedSet.html">BitMapDirectlyAddressedSet</a>&lt; T &gt;::sizeT</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>datastruct/<a class="el" href="BitMapDirectlyAddressedSet_8h_source.html">BitMapDirectlyAddressedSet.h</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Mon Nov 26 2012 17:06:45 for Data Structures for Sets and Graphs by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.1.1
</small></address>
</body>
</html>
